package com.inspur.edp.team;


import com.inspur.edp.team.dto.EnvTeam;

import java.util.List;

/**
 * 环境权限服务
 */
public interface PaasEnvAuthorityService {
    /**
     * 获取拥有环境权限的成员信息
     *
     */
    List<String> getAuthorityMemberlist(String envId, String teamId);

    /**
     * 添加成员环境权限
     *
     */
    void addAuthority(String envId, String teamId, String memberId);

    /**
     * 添加团队环境权限
     *
     */
    void addTeamAuthority(String envId, String teamId);

    /**
     * 新增团队成员，添加环境权限
     *
     */
    void addNewMemberAuthority(List<String> envIdList, String teamId, String userId);

    /**
     * 删除成员环境权限
     *
     */
    void removeAuthority(String envId, String teamId, String memberId);

    /**
     * 将成员移除团队，删除成员环境权限
     *
     */
    void removeMemberAuthority(String teamId, String memberId);

    /**
     * 团队与环境解绑，删除成员环境权限
     *
     */
    void removeTeamAuthority(String envId, String teamId);

    /**
     * 根据当前用户id获取拥有权限的环境ID
     *
     */
    List<EnvTeam> getUserEnvId(String userId);

    /*
    根据用户ID和团队ID校验用户是否为管理员
     */

    boolean editRoleCheck(String teamId);
}
